Оглавление | Родительский раздел

Глобальный контекст.УдалитьОбъекты (Global context.DeleteObjects)

Глобальный контекст (Global context)
УдалитьОбъекты (DeleteObjects)

Синтаксис:

УдалитьОбъекты(<СписокСсылок>, <Проверять>, <НайденныеДанные>, <ОбластьПоиска>, <ВключитьОбъекты>, <ИсключитьОбъекты>)

Параметры:

<СписокСсылок> (обязательный)

Тип: Массив.
Список ссылок на объекты, которые нужно удалить.

<Проверять> (необязательный)

Тип: Булево.
Определяет, выполнять ли контроль ссылочной целостности при выполнении процедуры. Истина - перед удалением проверяется, нет ли ссылок на удаляемый объект. Если есть, то объект не удаляется, а ссылки помещаются в таблицу значений <НайденныеДанные>. Ложь - проверка не выполняется.
Значение по умолчанию: Ложь.

<НайденныеДанные> (необязательный)

Тип: ТаблицаЗначений.
Содержит ссылки на найденные объекты в виде ТаблицаЗначений, состоящей из колонок с индексами: 0 - искомая ссылка; 1 - ссылка на объект, если найденная ссылка соответствует объектной таблице или значение, идентифицирующее запись необъектной таблицы; 2 - объект метаданных, которому соответствуют данные, в которых найдена ссылка.
В таблицу выводятся только непосредственно препятствующие удалению объекты (без рекурсии).

<ОбластьПоиска> (необязательный)

Тип: Массив.
Определяет область поиска объектов, которые следует удалить. Область устанавливается комбинацией разделителей, в состав которых включены объекты метаданных, среди данных которых следует выполнять поиск.
Элемент массива имеет тип Массив.
Элемент вложенного массива имеет тип:По умолчанию имеет значение Неопределено.
Допустимые значения:Примечание. Если комбинация разделителей содержит повторы, то вызывается исключение, т.к. в конфигурации не может быть объектов метаданных, дважды включенных в состав одного разделителя.
Значение по умолчанию: Неопределено.

<ВключитьОбъекты> (необязательный)

Тип: Массив.
Позволяет явно указать объекты метаданных, которые должны присутствовать в области поиска ссылок на объекты.
Элементом массива могут быть:Допустимые значения:
Значение по умолчанию: Неопределено.

<ИсключитьОбъекты> (необязательный)

Тип: Массив.
В качестве элементов массива могут выступать:Свойство позволяет явно указать объекты метаданных, которые следует исключить из области поиска ссылок на объекты.
Допустимые значения:
Значение по умолчанию: Неопределено.

Описание:

Удаляет объекты, ссылки на которые переданы в параметре <СписокСсылок>.
При проверке ссылочной целостности поиск осуществляется среди всех данных, из которых могут быть ссылки на переданные объекты. Если на какой-либо объект нет доступа, то вызывается исключение.
Требует монопольного режима доступа к базе данных.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Вызов метода выполняет обращение к серверу.

Примечание:

Ответственность за удаление объектов, на которые, возможно, имеются ссылки в недоступных данному сеансу данных, возлагается на вызывающего метод.

Если выполняется контроль ссылочной целостности, поиск ссылок выполняется в области данных, определенной параметрами <ОбластьПоиска>, <ВключитьОбъекты> и <ИсключитьОбъекты>.
Ссылки на найденные объекты возвращаются в таблице значений со следующими колонками:Если необходимо осуществлять поиск ссылок на объекты в подобластях, то необходимо в параметре <ОбластьПоиска> указывать комбинации разделителей с использованием неустановленных в сеансе разделителей. Если в комбинации разделителей будут указаны только реквизиты, разделяющие данные в режиме НезависимоИСовместно (помимо любых реквизитов, установленных в сеансе), то поиск будет выполняться в этих объектах, как среди доступных данных и результаты будут записаны в поле 2. Если хотя бы один неустановленный в сеансе реквизит, разделяет данные в режиме Независимо, то будет выполнена проверка наличия ссылок в подобласти и возвращены значения разделителей, идентифицирующих подобласть. Результат будет записан в поле 4.

Требования к реквизитам, разделяющим данные, но не используемые в сеансе:В разделенном режиме метод не устанавливает монопольного режима доступа, а использует управляемые блокировки с учетом текущего разделения.

На мобильной платформе параметры <ОбластьПоиска>, <ВключитьОбъекты>, <ИсключитьОбъекты> игнорируются.

Пример:

// удаление помеченных объектов с контролем ссылочной целостности

Помеченные = НайтиПомеченныеНаУдаление();
Найденные = 0;
УдалитьОбъекты(Помеченные, Истина, Найденные);
Для 
каждого Ссылка из Найденные Цикл
    СтрСообщения = "Объект не удален: " + СокрЛП(Ссылка[0]);
    СтрСсылка = ", используется в " + СокрЛП(Ссылка[1]);
    Сообщить (СтрСообщения + СтрСсылка);
КонецЦикла
;


Оглавление | Родительский раздел Платформа 8.3.13.1809